package com.southwind.springboottest.study.java8的新特性;

import java.util.Arrays;
import java.util.List;
import java.util.Optional;

/**
 * 1.stream中用Optional 是 Java 8 引入的一个容器类，用于表示可能为 null 的值，避免 NullPointerException。
 * 你可以使用 Optional 来进行条件判断，而不必直接使用 if 语句。
 * @Author: HXG28
 * @Date: 2025-03-28 14:50
 * @Version： 1.0
 **/
public class java8 {
    public static void main(String[] args) {
        //例如
        String str  = "nnn";
        if (str != null && !str.isEmpty()) {
            System.out.println("Valid string: " + str);
        }
        Optional.ofNullable(str).filter(s -> !s.isEmpty())
                .ifPresent(s -> System.out.println("Valid string: " + s));


        List<String> strings = Arrays.asList("apple", "banana", "orange");
        strings.stream()
                .filter(s -> s.startsWith("a"))
                .forEach(System.out::println);
        boolean condition = true;
        String result;
        if (condition) {
            result = "Condition met";
        } else {
            result = "Condition not met";
        }
        String result2 = Optional.ofNullable(condition)
                .map(c -> "Condition met")
                .orElse("Condition not met");

    }

}
